package com.firefly.admin.common.enums;

public enum ResultCodeEnum {
    /**
     * 公共异常
     */
    SUCCESS(200, "操作成功"),
    ERROR(500, "操作失败"),
    UNAUTHORIZED(401, "未授权"),
    FORBIDDEN(403, "无权限"),
    NOT_LOGGED_IN(5001, "未登录"),
    REQUEST_PARAM_EXCEPTION(5002, "请求参数异常"),
    ADD_EXCEPTION(5003, "新增入库异常"),
    UPDATE_EXCEPTION(5004, "编辑入库异常"),
    DELETE_EXCEPTION(5005, "删除入库异常"),
    FILE_UPLOAD_EXCEPTION(5006, "文件上传异常"),
    USER_OLD_LOGIN_PWD_NOT_NULL(5007, "账号旧密码不能为空"),
    USER_NEW_LOGIN_PWD_NOT_NULL(5008, "账号新密码不能为空"),
    USER_NEW_OLD_LOGIN_PWD_SAME(5008, "账号新密码与旧密码一致"),
    USER_NEW_MOBILE_NOT_NULL(5009, "账号新手机号不能为空"),
    USER_NEW_EMAIL_NOT_NULL(5010, "账号新邮箱不能为空"),
    SIGN_AUTH_FAIL(5011, "签名认证失败"),
    XSS_AUTH_FAIL(5011, "XSS认证失败"),
    BATCH_IMPORT_FILE_TYPE_ERROR(5012, "批量导入文件类型错误"),
    BATCH_IMPORT_IMPLEMENTS_CLASS_NOT_FOUND(5012, "批量导入实现类不存在"),
    BATCH_IMPORT_FILE_IS_NULL(5013, "批量导入文件为空"),
    BATCH_IMPORT_VERIFY_RESULT_IS_NULL(5014, "批量导入校验结果为空"),
    WEBSOCKET_USER_NOT_FOUND(5015, "无账号不允许连接"),

    /**
     * 登录操作业务错误编码 10001-19999
     */
    LOGIN_NAME_OR_PASSWORD_ERROR(10001, "用户名或密码错误"),
    LOGIN_NAME_OR_PASSWORD_EXCEPTION(10002, "用户名或密码异常，请联系管理员！"),
    USER_INFO_EXCEPTION(10003, "用户信息异常，请联系管理员！"),
    LOGIN_EXCEPTION(10004, "登录异常，请联系管理员！"),
    VERIFICATION_CODE_ERROR(10005, "验证码错误，请刷新重试！"),
    VERIFICATION_CODE_NOT_NULL(10006, "验证码不能为空，请刷新重试！"),
    VERIFICATION_CODE_EXPIRED(10007, "验证码已过期，请刷新重试！"),
    USER_STATUS_EXCEPTION(10008, "用户状态异常不允许登录！"),
    PASSWORD_ERROR(10009, "账号密码错误"),
    LOGIN_PASSWORD_NOT_NULL(10010, "登录密码不能为空"),
    LOGIN_USER_NAME_NOT_NULL(10011, "登录用户名不能为空"),

    /**
     * 系统管理操作业务错误20001-29999
     */
    SYSTEM_USER_NOT_FOUND(20001, "系统用户不存在"),
    SYSTEM_USER_NAME_NOT_NULL(20002, "系统用户名不能为空"),
    SYSTEM_USER_NAME_EXIST(20003, "系统用户名已存在"),
    SYSTEM_LOGIN_PWD_NOT_NULL(20004, "系统用户密码不能为空"),
    SYSTEM_MOBILE_NOT_NULL(20005, "系统用户手机号不能为空"),
    SYSTEM_MOBILE_WRONGFUL(20006, "系统用户手机号不合法"),
    DELETE_USER_ROLES_EXCEPTION(20008, "删除管理员角色异常"),
    ADD_USER_ROLES_EXCEPTION(20009, "新增管理员角色异常"),
    SYSTEM_ROLE_NOT_FOUND(20010, "系统角色不存在"),
    SYSTEM_ROLE_NAME_NOT_NULL(20011, "系统角色名称不能为空"),
    SYSTEM_ROLE_NAME_EXIST(20012, "系统角色名称已存在"),
    DELETE_ROLE_MENUS_EXCEPTION(20013, "删除角色权限异常"),
    SYSTEM_MENU_NOT_FOUND(20015, "系统菜单不存在"),
    SYSTEM_MENU_PARENT_NOT_NULL(20016, "系统菜单父节点不能为空"),
    SYSTEM_MENU_PARENT_NOT_FOUND(20017, "系统菜单父节点不存在"),
    SYSTEM_MENU_CODE_NOT_NULL(20018, "系统菜单编码不能为空"),
    SYSTEM_MENU_CODE_EXIST(20019, "系统菜单编码已存在"),
    SYSTEM_MENU_NAME_NOT_NULL(20020, "系统菜单名称不能为空"),
    SYSTEM_USER_STATUS_NOT_NULL(20021, "系统用户状态不能为空"),
    SYSTEM_ROLE_STATUS_NOT_NULL(20022, "系统角色状态不能为空"),
    SYSTEM_MENU_STATUS_NOT_NULL(20023, "系统菜单状态不能为空"),
    SYSTEM_MENU_TYPE_NOT_NULL(20024, "系统菜单类型不能为空"),
    SYSTEM_DICTIONARY_NOT_FOUND(20026, "系统字典不存在"),
    SYSTEM_DICTIONARY_STATUS_NOT_NULL(20027, "系统字典状态不能为空"),
    SYSTEM_DICTIONARY_NAME_NOT_NULL(20028, "系统字典名称不能为空"),
    SYSTEM_DICTIONARY_CODE_NOT_NULL(20029, "系统字典编码不能为空"),
    SYSTEM_DICTIONARY_CODE_EXIST(20030, "系统字典编码已存在"),
    SYSTEM_DICTIONARY_ITEM_NOT_FOUND(20032, "系统字典项目不存在"),
    SYSTEM_DICTIONARY_ITEM_NAME_NOT_FOUND(20033, "系统字典项目名称不存在"),
    SYSTEM_DICTIONARY_ITEM_VALUE_NOT_NULL(20034, "系统字典项目值不能为空"),
    SYSTEM_DICTIONARY_ITEM_EXIST(20035, "系统字典项目已存在"),
    SYSTEM_CONFIGURATION_NOT_FOUND(20036, "系统配置不存在"),
    SYSTEM_CONFIGURATION_KEY_NOT_NULL(20037, "系统配置KEY不能为空"),
    SYSTEM_CONFIGURATION_KEY_NOT_ALLOW_UPDATE(20038, "系统配置KEY不允许修改"),
    SYSTEM_ROLE_USING(20039, "系统角色正在使用不允许删除"),
    SYSTEM_DB_LOGIN_PWD_EXCEPTION(20047, "账号数据库密码异常"),
    SYSTEM_EMAIL_WRONGFUL(20048, "系统用户邮箱不合法"),
    SYSTEM_MOBILE_EXIST(20049, "系统用户手机号已存在"),
    SYSTEM_SENSITIVE_CONFIG_NOT_FOUND(20050, "系统敏感数据配置不存在"),
    SYSTEM_SENSITIVE_CONFIG_STATUS_NOT_NULL(20051, "系统敏感数据配置状态不能为空"),
    SYSTEM_WHITE_LIST_NOT_FOUND(20052, "系统白名单不存在"),
    SYSTEM_WHITE_LIST_STATUS_NOT_NULL(20053, "系统白名单状态不能为空"),
    SYSTEM_WHITE_LIST_TYPE_NOT_NULL(20053, "系统白名单类型不能为空"),
    SYSTEM_WHITE_LIST_VALUE_NOT_NULL(20053, "系统白名单类型不能为空"),
    SYSTEM_DICTIONARY_CODE_REPEAT(20054, "系统字典编码重复"),
    SYSTEM_ORG_NOT_FOUND(20055, "系统组织机构不存在"),
    SYSTEM_ORG_BIND_USER_NOT_ALLOW_DELETE(20056, "系统组织机构已绑定用户不允许删除"),
    SYSTEM_ORG_STATUS_NOT_NULL(20057, "系统组织机构状态不能为空"),
    SYSTEM_ORG_NAME_NOT_NULL(20058, "系统组织机构名称不能为空"),
    SYSTEM_ORG_NAME_EXIST(20059, "系统组织机构名称已存在"),
    SYSTEM_ORG_PARENT_NOT_NULL(20060, "系统组织机构父节点不存在"),
    SYSTEM_USER_MESSAGE_ID_NOT_NULL(20061, "系统用户消息ID不能为空"),
    SYSTEM_NOTICE_NOT_FOUND(20064, "系统通知不存在"),
    SYSTEM_NOTICE_STATUS_NOT_NULL(20065, "系统通知状态不能为空"),

    /**
     * 系统监控操作业务错误30001-39999
     */
    MONITOR_JOB_NOT_FOUND(30001, "定时任务不存在"),
    MONITOR_JOB_NAME_NOT_NULL(30002, "定时任务名称不能为空"),
    MONITOR_JOB_CLASS_NOT_NULL(30003, "定时任务类不能为空"),
    MONITOR_JOB_METHOD_NAME_NOT_NULL(30004, "定时任务方法名不能为空"),
    MONITOR_JOB_CRON_NOT_NULL(30005, "定时任务CRON表达式不能为空"),
    MONITOR_JOB_EXIST(30006, "定时任务已存在"),
    MONITOR_JOB_CLASS_NOT_ALLOW_UPDATE(30007, "定时任务类不允许修改"),
    MONITOR_JOB_METHOD_NAME_NOT_ALLOW_UPDATE(30008, "定时任务方法名不允许修改"),
    MONITOR_JOB_RUNNING_NOT_ALLOW_UPDATE(30009, "定时任务运行中不允许修改"),
    MONITOR_JOB_RUNNING_NOT_ALLOW_DELETE(30010, "定时任务运行中不允许删除"),
    MONITOR_JOB_RUNNING_ALREADY_RUNNING(30011, "定时任务已启动，无需重复启动！"),
    MONITOR_JOB_NOT_RUNNING_ALREADY_RUNNING(30012, "定时任务已结束，无需重复结束！"),
    MONITOR_JOB_HAND_EXECUTE_EXCEPTION(30013, "定时任务手动执行异常！"),
    MONITOR_JOB_START_EXECUTE_EXCEPTION(30014, "定时任务执行异常，请联系管理员！"),
    MONITOR_JOB_STOP_EXECUTE_EXCEPTION(30015, "定时任务停止异常，请联系管理员！"),
    MONITOR_JOB_ABANDON_EXECUTION(30016, "定时任务执行策略为放弃执行无法启动"),

    /**
     * 第三方对接模块40001-49999
     */
    TRIPARTITE_WECHAT_APPLET_NOT_FOUND(40001, "微信小程序不存在"),
    TRIPARTITE_WECHAT_APPLET_APPID_EXIST(40002, "微信小程序APPID已存在"),
    TRIPARTITE_WECHAT_APPLET_STATUS_NOT_NULL(40003, "微信小程序状态不能为空"),
    TRIPARTITE_WECHAT_APPLET_NAME_NOT_NULL(40004, "微信小程序名称不能为空"),
    TRIPARTITE_WECHAT_APPLET_APPID_NOT_NULL(40005, "微信小程序APPID不能为空"),
    TRIPARTITE_WECHAT_APPLET_SECRET_NOT_NULL(40006, "微信小程序秘钥不能为空"),
    TRIPARTITE_WECHAT_APPLET_TOKEN_NOT_NULL(40007, "微信小程序TOKEN不能为空"),
    TRIPARTITE_WECHAT_MERCHANT_NOT_FOUND(40008, "微信商户不存在"),
    TRIPARTITE_WECHAT_MERCHANT_ID_EXIST(40008, "微信商户号已存在"),
    TRIPARTITE_WECHAT_MERCHANT_STATUS_NOT_NULL(40008, "微信商户状态不能为空"),
    TRIPARTITE_WECHAT_MERCHANT_NAME_NOT_NULL(40008, "微信商户名称不能为空"),
    TRIPARTITE_WECHAT_MERCHANT_ID_NOT_NULL(40008, "微信商户号不能为空"),
    TRIPARTITE_WECHAT_MERCHANT_KEY_NOT_NULL(40008, "微信商户秘钥不能为空"),
    TRIPARTITE_WECHAT_MERCHANT_SERIAL_NUMBER_NOT_NULL(40008, "微信商户证书序列号不能为空"),
    TRIPARTITE_WECHAT_MERCHANT_API_KEY_NOT_NULL(40008, "微信商户V3版本APIKEY不能为空"),
    TRIPARTITE_WECHAT_OFFICIAL_ACCOUNT_NOT_FOUND(40007, "微信公众号信息不存在"),
    TRIPARTITE_WECHAT_OFFICIAL_ACCOUNT_STATUS_NOT_NULL(40008, "微信公众号状态不能为空"),
    TRIPARTITE_WECHAT_OFFICIAL_ACCOUNT_APP_ID_NOT_NULL(40004, "微信公众号appId不能为空"),
    TRIPARTITE_WECHAT_OFFICIAL_ACCOUNT_APP_ID_EXIST(40005, "微信公众号appId已存在"),
    TRIPARTITE_WECHAT_OFFICIAL_ACCOUNT_NAME_NOT_NULL(40003, "微信公众号名称不能为空"),
    TRIPARTITE_WECHAT_OFFICIAL_ACCOUNT_SECRET_KEY_NOT_NULL(40001, "微信公众号秘钥不能为空"),
    WECHAT_PAY_CREATE_ORDER_ERROR(40009, "微信支付订单创建异常,请联系管理员"),
    WECHAT_PAY_TRANSACTION_ORDER_ERROR(40010, "交易订单异常，请联系管理员"),
    WECHAT_PAY_ORDER_UNPAID(40011, "订单未支付完成"),
    /**
     * 供应商管理模块
     */
    WORKBENCH_SHORTCUT_MENU_NOT_FOUND(50001, "用户快捷菜单信息不存在"),
    WORKBENCH_USER_NOT_MENU_PERMISSION(50002, "用户没有当前菜单权限"),
    ;

    private Integer code;
    private String msg;

    ResultCodeEnum(Integer code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }
}
